Article 2221

Title of the article

The problem of transaction processing using microservice architecture 

Authors

Dmitriy S. Fomin, Postgraduate student, Ogarev Mordovia State University (68 Bolshevistskaya street, Saransk, Russia), E-mail: nkfominsa@gmail.com
Aleksandr V. Bal'zamov, Postgraduate student, Ogarev Mordovia State University (68 Bolshevistskaya street, Saransk, Russia), E-mail: veron13rus@yandex.ru 

Index UDK

004.451.26 

DOI

10.21685/2072-3059-2021-2-2 

Abstract

Background. The object of the research is an e-commerce system built on the principle of microservice architecture. The subject of the research is methods of ensuring correct operation of transactions using a microservice architecture. The purpose of the work is to find an optimal method for solving the problem of processing transactions using a microservice architecture. Materials and methods. Research was carried out in the field of architectural solutions for the construction of high-load e-commerce systems. T Two-phase commit methods were used to process transactions and a pattern-compensating transaction − “Saga”. Results. The research analyzes the features of working with transactions and proposes methods for solving the problem of processing transactions in systems built using a microservice architecture. Conclusions. The approaches considered, as a rule, involve the introduction of additional services (Transaction Coordinator or Saga Orchestrator) that manage the life cycle of transactions, which increases development costs and complexity. Applying the described solution methods, the system becomes more fault-tolerant and scalable. 

Key words

microservice architecture, transaction, database, service, business process 

Download PDF
References

1. Fauler M. Shablony korporativnykh prilozheniy = Enterprise application templates. Moscow: Dialektika-Vil'yams, 2019:546. (In Russ.)
2. Leyn K., Chereti M. Bazy dannykh. Inzhiniring nadezhnosti = Database. Reliability engineering. Saint-Petersburg: Piter, 2020:304. (In Russ.)
3. Bazhenova I.Yu. Razrabotka raspredelennykh prilozheniy baz dannykh: kurs lektsiy = Developing distributed database applications: a course of lectures. Moscow: MGU im. M. V. Lomonosova, 2006:203. (In Russ.)
4. Martin R. Chistaya arkhitektura. Iskusstvo razrabotki programmnogo obespecheniya = Clean architecture. The art of software engineering. Saint-Petersburg: Piter, 2018:352. (In Russ.)
5. Il'in V.V. Modelirovanie biznes-protsessov. Prakticheskoe ispol'zovanie ARIS = Business process modeling. Practical use of ARIS. Moscow: Dialektika-Vil'yams, 2006:176. (In Russ.)
6. Goetsch K. Microservices for Modern Commerce: Report. CA: O'Reilly Media, 2017:25–47.
7. Problematika raspredelennykh tranzaktsiy v kontekste mikroservisnoy arkhitektury = Issues of distributed transactions in the context of a microservice architecture. Available at: https://habr.com/ru/company/otus/blog/516720/ (accessed 08.03.2021). (In Russ.)
8. Nadareishvili I., Mitra R., McLarty M., Amundsen M. Microservice architecture. CA: O'Reilly Media, 2016:25–38.
9. Committing a Transaction in Single-Phase and Multi-Phase. Available at: https://docs.microsoft.com/ru-ru/dotnet/framework/data/transactions/committing-atransaction-in-single-phase-and-multi-phase (accessed 07.03.2021).
10. Saga distributed transactions. Available at: https://docs.microsoft.com/en-us/azure/ architecture/reference-architectures/saga/saga (accessed 08.03.2021).
11. Saga pattern and distributed transactions. Available at: https://bool.dev/blog/ detail/saga-pattern-i-raspredelennye-tranzaktsii (accessed 08.03.2021).
12. Applying the saga pattern. Available at: https://medium.com/
@evgenzt/%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%
B5%D0%BF%D0%B0%D1%82%D1%82%D0%B5%D1%80%D0%BD%D0%B0%D1%81%D0%B0%D0%B3%D0%B0-
7eead841d90f (accessed 08.03.2021).
13. Sagas. Available at: https://microservices.io/patterns/data/saga.html (accessed 08.03.2021). 14. Pattern: Saga. Available at: https://itnan.ru/post.php?c=1&p=427705 (accessed 09.03.2021).
15. Pattern: Saga. Available at: https://habr.com/ru/company/otus/blog/519636/ (accessed 09.03.2021).

 

Дата создания: 20.09.2021 11:46
Дата обновления: 20.09.2021 12:00